home *** CD-ROM | disk | FTP | other *** search
/ Mac Magazin/MacEasy 32 / Mac Magazin and MacEasy Magazine CD - Issue 32.iso / Multimedia / PlayerPRO 4.5.5 Dev.Kit / Plug-Ins / Sound Filters Plugs / Bug 16bit Restore.c < prev    next >
C/C++ Source or Header  |  1995-10-08  |  1KB  |  59 lines

  1. /*
  2.     Player PRO 4.15x PlugIns
  3.  
  4.     Antoine ROSSET
  5.     16 Tranchees
  6.     1206 GENEVA
  7.     SWITZERLAND
  8.     
  9.     FAX: 022 789 35 03
  10.     Compuserve: 100277,164
  11. */
  12.  
  13. #include "MAD.h"
  14. #include "PPPlug.h"
  15.  
  16. #if defined(powerc) || defined(__powerc)
  17. enum {
  18.         PlayerPROPlug = kCStackBased
  19.         | RESULT_SIZE(SIZE_CODE( sizeof(OSErr)))
  20.         | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof( sData*)))
  21.         | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof( long)))
  22.         | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof( long)))
  23.         | STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof( PPInfoPlug*)))
  24. };
  25.  
  26. ProcInfoType __procinfo = PlayerPROPlug;
  27. #else
  28. #include <A4Stuff.h>
  29. #endif
  30.  
  31.  
  32. OSErr main(     sData                    *theData,
  33.                 long                    SelectionStart,
  34.                 long                    SelectionEnd,
  35.                 PPInfoPlug                *thePPInfoPlug)
  36. {
  37. long            i;
  38. Ptr                Sample8Ptr = theData->data;
  39. unsigned short    *Sample16Ptr = (unsigned short*) theData->data;
  40.  
  41.     if( Sample8Ptr == 0L) return noErr;
  42.     
  43.     switch( theData->amp)
  44.     {
  45.         case 8:
  46.             return noErr;
  47.         break;
  48.         
  49.         case 16:
  50.             for( i = 0; i < theData->size; i++)
  51.             {
  52.                 *Sample8Ptr -= 0x80;
  53.                 Sample8Ptr++;
  54.             }
  55.         break;
  56.     }
  57.     
  58.     return noErr;
  59. }